package com.ruoyi.market.mapper;

import com.ruoyi.market.domain.Level;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 等级设置表 数据层
 * 
 * @author ruoyi
 */
public interface LevelMapper
{
    /**
     * 根据条件分页查询等级设置列表
     * 
     * @param level 等级设置信息
     * @return 等级设置信息集合信息
     */
    public List<Level> selectLevelList(Level level);

    /**
     * 通过等级设置名查询等级设置
     * 
     * @param levelTitle 等级设置名
     * @return 等级设置对象信息
     */
    public Level selectLevelByLevelTitle(String levelTitle);

    /**
     * 通过等级设置ID查询等级设置
     * 
     * @param levelId 等级设置ID
     * @return 等级设置对象信息
     */
    public Level selectLevelById(Long levelId);

    /**
     * 校验名称是否唯一
     *
     * @param levelTitle 名称
     * @param shopId 店铺ID
     * @return 结果
     */
    public Level checkLevelTitleUnique(@Param("levelTitle") String levelTitle, @Param("shopId") String shopId);

    /**
     * 新增等级设置信息
     * 
     * @param level 等级设置信息
     * @return 结果
     */
    public int insertLevel(Level level);

    /**
     * 修改等级设置信息
     * 
     * @param level 等级设置信息
     * @return 结果
     */
    public int updateLevel(Level level);

    /**
     * 批量删除等级设置信息
     * 
     * @param levelIds 需要删除的等级设置ID
     * @return 结果
     */
    public int deleteLevelByIds(Long[] levelIds);
}
